// 账单相关 store
import { createSlice } from '@reduxjs/toolkit'
import axios from 'axios'

const billStore = createSlice({
  // 仓库名称
  name: 'billStore',
  // 初始化 store 仓库
  initialState: {
    billList: []
  },
  // reduces
  reducers: {
    // 同步设置 billList
    setBillList (state, action) {
      state.billList = action.payload
    }
  }
})

// 结构 actionCreator 方法
const { setBillList } = billStore.actions

// 导出 异步修改 billStore 的方法
const getBillData = () => async dispatch => {
  // 获取数据
  const res = await axios.get('http://localhost:1668/ka')
  // 触发 同步设置 billList 方法
  dispatch(setBillList(res.data))
}

// 导出 actionCreator 方法
export { getBillData }

// 默认导出 reducer
export default billStore.reducer
